Add gtk_widget_has_grab() as replacement for GTK_WIDGET_HAS_GRAB().
gtk_widget_get_visual
gtk_widget_grab_default
gtk_widget_grab_focus
+gtk_widget_has_default
gtk_widget_has_focus
+gtk_widget_has_grab
gtk_widget_has_screen
gtk_widget_hide
gtk_widget_hide_all
gtk_widget_get_has_window
gtk_widget_set_can_default
gtk_widget_get_can_default
-gtk_widget_has_default
gtk_widget_set_can_focus
gtk_widget_get_can_focus
#endif
g_warning (G_STRLOC ": widget not within a GtkWindow");
}
+/**
+ * gtk_widget_has_grab:
+ * @widget: a #GtkWidget
+ *
+ * Determines whether the widget is currently grabbing events, so it
+ * is the only widget receiving input events (keyboard and mouse).
+ *
+ * See also gtk_grab_add().
+ *
+ * Return value: %TRUE if the widget is in the grab_widgets stack
+ *
+ * Since: 2.18
+ **/
+gboolean
+gtk_widget_has_grab (GtkWidget *widget)
+{
+ g_return_val_if_fail (GTK_IS_WIDGET (widget), FALSE);
+
+ return (GTK_WIDGET_FLAGS (widget) & GTK_HAS_GRAB) != 0;
+}
+
/**
* gtk_widget_set_name:
* @widget: a #GtkWidget
gboolean gtk_widget_has_default (GtkWidget *widget);
void gtk_widget_grab_default (GtkWidget *widget);
+gboolean gtk_widget_has_grab (GtkWidget *widget);
+
void gtk_widget_set_name (GtkWidget *widget,
const gchar *name);
G_CONST_RETURN gchar* gtk_widget_get_name (GtkWidget *widget);